FIG. 1 shows a long term evolution (LTE) system 100 including a wireless transmit/receive unit (WTRU) 105 and an eNodeB (eNB) 110. Each of the WTRU 105 and the eNB 110 include a user-plane protocol stack having layer 2 (L2) sublayers. The L2 sublayers include a packet data control protocol (PDCP) sublayer 120, a radio link control (RLC) sublayer 125, and a medium access control (MAC) sublayer 130. The protocol stack also includes a physical layer 135. A radio resource control (RRC) sublayer 140 controls each of the PDCP sublayer 120, the RLC sublayer 125, the MAC sublayer 130 and the physical layer 135.
The following functions are supported by the MAC sublayer 130:                1) mapping between logical channels and transport channels;        2) multiplexing of MAC service data units (SDUs) from one or different logical channels onto transport blocks (TBs) to be delivered to the physical layer 135 on transport channels;        3) demultiplexing of MAC SDUs of one or different logical channels from TBs delivered from the physical layer 135 on transport channels;        4) scheduling information reporting;        5) error correction through hybrid automated retransmission request (HARM);        6) priority handling between WTRUs using dynamic scheduling;        7) priority handling between logical channels of one WTRU;        8) logical channel prioritization; and        9) transport format selection.        
One of the functions of the MAC sublayer 130 in the WTRU 105 is logical channel prioritization. FIG. 2 shows available uplink transport channels such as random access channels (RACHs) 205 and uplink shared channels (UL-SCHs) 210, and available uplink logical channels such as common control channels (CCCHs) 215, dedicated control channels (DCCHs) 220 and dedicated traffic channels (DTCHs) 225. The MAC sublayer 130 may receive MAC SDUs, (i.e., RLC protocol data units (PDUs)), from different logical channels coming out of the RLC sublayer 125. The MAC sublayer 130 then multiplexes those MAC SDUs onto one transport channel, (e.g., a UL-SCH 210).
MAC SDUs are prioritized and selected from different logical channels. A logical channel prioritization procedure may be applied when a new MAC transmission is performed. The RRC sublayer 140 may control the scheduling of uplink data by giving each logical channel a priority, where increasing priority values indicate lower priority levels. In addition, each logical channel is configured with a prioritized bit rate (PBR) and, optionally, a maximum bit rate (MBR).
An uplink (UL) grant provides the characteristics of the channel resources to be used for data transmission on the uplink. The UL grant is a 20 bit field that indicates fixed size resource block assignment, modulation and coding scheme (MCS), UL delay and transmit power control (TPC). The UL grant is sent in the downlink (DL) from the eNB 110 to the WTRU 105 to inform the WTRU 105 of the amount and type of channel resource to be used by the WTRU 105 for UL transmissions.
The logical channel prioritization procedure assists the WTRU with serving the logical channels in the following sequence:                1) Logical channels are served in a decreasing priority order up to their configured PBR.        2) If any resources remain, the logical channels are served in a decreasing priority order up to their configured MBR. In case no MBR is configured, the logical channel is served until either the data for that logical channel or the UL grant is exhausted, whichever comes first.        3) Logical channels configured with the same priority are served equally by the WTRU.        4) MAC control elements for basic symbol rate (BSR), with the exception of padding BSR, have a higher priority than user-plane logical channels.        
A WTRU has an uplink rate control function which manages the sharing of uplink resources between radio bearers. The RRC controls the uplink rate control function by giving each bearer a priority and a prioritized bit rate (PBR). In addition, an MBR per gross bit rate (GBR) bearer is also configured. The values signaled may not be related to the ones signaled via S1 to an eNB.
The uplink rate control function ensures that the WTRU serves its radio bearers in the following sequence:                1) All of the radio bearers in decreasing priority order up to their PBR; and        2) All of the radio bearers in decreasing priority order for the remaining resources assigned by the grant and the function ensures that the MBR is not exceeded.        
In case the PBRs are all set to zero, step 1) is skipped and the radio bearers are served in strict priority order. The WTRU maximizes the transmission of higher priority data. By limiting the total grant to the WTRU, the eNB can ensure that the aggregate MBR (AMBR) is not exceeded. If more than one radio bearer has the same priority, the WTRU may serve these radio bearers equally.
Since resources are owned by the operator, scheduling of radio resources and resource allocation takes place in the MAC sublayer 130 in the eNB 110. However, the MAC sublayer 130 in the WTRU 105 provides the eNB 110 with information such as quality of service (QoS) requirements and WTRU radio conditions (identified through measurements) as an input to the scheduling procedures at the eNB 110.
Initially, it is noted that input parameters may be specified. Constraints for the WTRU output (output of a scheduler in the MAC sublayer 130) may also be specified. However, a mandatory WTRU operation is not required.
For the specification of the input parameters, a token bucket model has been used. The PBR/MBR is the “token rate”. In the model, there is a “token bucket size” parameter, but it is unsettled if this is derived by the WTRU from, for example, the token rate or fixed size, or needs to be signaled explicitly by the eNB.
The token bucket is a control mechanism that dictates when traffic can be transmitted. A “bucket” in the context of data transmission is a buffer that holds aggregate network traffic to be transmitted as a means to control traffic. This bucket, (i.e., the buffer), contains tokens that represent the amount of traffic in bytes or packets of a predetermined size that the sender is allowed to transmit. The amount of available tokens can be seen as “credit” that can be cached in when data needs to be transmitted. When the sender runs out of “credit” (i.e., tokens in a bucket), the sender is not allowed to send any more traffic.
The PBR/GBR should not limit the reported buffer status. The impact of the MBR impact on the buffer status reporting is unsettled.
A token bucket model is used to describe the rate calculations, whereby each logical channel will have token buckets associated with it, related to the PBR and MBR. The rates at which tokens are added to the buckets are the PBR and MBR respectively. Token bucket size can not exceed a certain maximum.
The following provides a potential description for rate calculations or equivalently token bucket calculations. If it is accepted that the behavior of the WTRU should be described explicitly, a (token) credit may be used. By way of example, for each time increment Tj, for each bearer j that has a PBR, the PBR credit associated with bearer j is incremented by the value of Tj×PBRj. If the bearer also has an MBR, then the MBR credit associated with the bearer j is incremented by the value of Tj×MBRj. If upper limits are set for the maximum PBR and/or MBR credits for the bearer, then if the accumulated values exceed the maximum values, they are set equal to the maximum value.
At each scheduling opportunity, (i.e., transmission time interval (TTI)), where the WTRU is permitted to transmit new data, data is selected from the highest priority bearer that has a non-empty buffer state and a non-zero PBR credit. The WTRU can add to the transport block data equal to the size of the buffer, the size of the PBR credit or the available capacity of the transport block whichever is the smaller. The PBR credit and the MBR credit are decremented by the quantity of data assigned.
If the PBR credit of all bearers is zero and there is still space in the transport block, then the scheduler accepts data from the highest priority bearer with data buffered. The scheduler accepts data up to the size of the available space in the transport block or the WTRU's MBR credit, whichever is the smaller. The MBR credit is decremented by the quantity of data that was accepted. The accepted data is combined before data is fetched from the RLC sublayer.
Rate calculations, or equivalently token bucket calculations, may also be described. At every TTI boundary for which a new transmission is requested by the HARQ entity, the WTRU performs the operations described below:
For each logical channel ordered in a decreasing priority order, perform the following:
 If ((PBR_Token_Bucket >= UL_Grant) and (UL_Grant >= amount of data buffered for  transmission)).     serve this logical channel up to MIN(amount of data buffered for transmission,   PBR_MAX_OUTPUT_RATE) bytes, Else     If ( PBR_Token_Bucket >= 0 )     Allowed_Extra_Tokens = MIN( MAX( 0, UL_Grant − PBR_Token_Bucket ) ,    0.5 * PBR_BUCKET_SIZE)     Else     Allowed_Extra_Tokens = 0     serve this logical channel for x bytes, where x is between 0 and MIN(UL_Grant,   PBR_Token_Bucket + Allowed_Extra_Tokens, amount of data buffered for   transmission, PBR_MAX_OUTPUT_RATE) bytes. The value of x is   implementation dependent, (e.g., when choosing the value of x, the WTRU should   take into account various factors such as SDU segmentation, serving two logical   channels with identical priority fairly, etc.).  decrement UL_Grant by the served amount of bytes, if any.  decrement PBR_Token_Bucket by the served amount of bytes, if any.  If UL_Grant is greater than zero, for each logical channel ordered in a decreasing priority order, perform the following:   if a MBR token bucket has been configured for this logical channel   If (( MBR_Token_Bucket >= UL_Grant ) and ( UL_Grant >= amount of data   buffered for transmission ))- serve this logical channel up to MIN(amount of data   buffered for transmission, MBR_MAX_OUTPUT_RATE) bytes;    Else      If ( MBR_Token_Bucket >= 0 )       Allowed_Extra_Tokens = MIN( MAX( 0, UL_Grant −     MBR_Token_Bucket ) , 0.5 * MBR_BUCKET_SIZE)    Else       Allowed_Extra_Tokens = 0     serve this logical channel for x bytes, where x is between 0 and MIN(UL_Grant,    MBR_Token_Bucket + Allowed_Extra_Tokens, amount of data buffered for    transmission, MBR_MAX_OUTPUT_RATE) bytes. The value of x is    implementation dependent (e.g., when choosing the value of x, the WTRU should    take into account various factors such as SDU segmentation, serving two logical    channels with identical priority fairly, etc.). Else    serve the logical channel up to MIN(UL_Grant, amount of data buffered for   transmission) bytes; decrement UL_Grant by the served amount of bytes, if any; and     decrement MBR_Token_Bucket by the served amount of bytes, if any.
Logical channels configured with the same priority shall be served equally by the WTRU.
MAC PDUs and MAC Control Elements
FIG. 3 shows a MAC PDU 300 consisting of a MAC header 305, and may include MAC SDUs 310 and 315, MAC control elements 320 and 325, and padding 330. Both the MAC header 305 and the MAC SDUs 310 and 315 are of variable sizes.
A header of the MAC PDU 300 includes one or more MAC PDU sub-headers 335, 340, 345, 350, 355 and 360, each of which corresponds to a MAC SDU 310 or 315, a MAC control element 320 or 325, or padding 330.
The MAC sublayer can generate MAC control elements, such as buffer status report control elements. MAC control elements are identified via specific values for the logical channel identification (LCID), as shown below in Table 1. Indices 00000-yyyyy correspond to actual logical channels that have a corresponding RLC sublayer, while the remaining values may be used for other purposes, such as for identifying MAC control elements, (e.g., buffer status reports), or padding.
TABLE 1Values of LCID for UL-SCHIndexLCID values00000-yyyyyIdentity of the logical channelyyyyy-11100reserved11101Short Buffer Status Report11110Long Buffer Status Report11111Padding
RLC
The main services and functions of the LTE RLC sublayer include:                1) Transfer of upper layer PDUs supporting acknowledged mode (AM) or unacknowledged mode (UM);        2) Transparent mode (TM) data transfer;        3) Error Correction through ARQ (CRC check provided by the physical layer, no CRC needed at RLC level);        4) Segmentation according to the size of the TB: only if an RLC SDU does not fit entirely into the TB then the RLC SDU is segmented into variable sized RLC PDUs, which do not include any padding;        5) Re-segmentation of PDUs that need to be retransmitted: if a retransmitted PDU does not fit entirely into the new TB used for retransmission then the RLC PDU is re-segmented;        6) The number of re-segmentation is not limited;        7) Concatenation of SDUs for the same radio bearer;        8) In-sequence delivery of upper layer PDUs except at handover (HO) in the uplink;        9) Duplicate Detection;        10) Protocol error detection and recovery;        11) Flow Control between eNB and WTRU (FFS);        12) SDU discard; and        13) Reset.        
The RLC supports three modes of operation: AM (acknowledged mode), UM (unacknowledged mode), and TM (transparent mode) and generates control PDUs, such as STATUS PDUs, which are generated by the AM RLC entities.
It would be desirable to provide an enhanced L2 uplink channel prioritization and rate control method for minimizing padding, while taking into account control traffic and logical channels that correspond to signaling radio bearers (SRBs).